Processing elements send memory access requests to memory systems. The processing elements may resend the same memory access request if the data received back from the memory system is invalid, incorrect, corrupted, etc. The processing element will fail if the requested data is still invalid or incorrect after multiple memory access attempts. The processing element may then need to be restarted or rebooted.
In many computer architectures different devices, applications, or elements request data from the same memory system. The memory accesses from these different devices and applications can also be abstracted by other devices or processing elements. For example, an operating system may break a read request from a software application into a plurality of different individual read operations.
Memory access requests from different sources and the abstractions made by other processing elements make it difficult to correctly identify repeated memory access requests that are associated with incorrect or corrupted data.